.TH std::uninitialized_construct_using_allocator 3 "2024.06.10" "http://cppreference.com" "C++ Standard Libary"
.SH NAME
std::uninitialized_construct_using_allocator \- std::uninitialized_construct_using_allocator

.SH Synopsis
   Defined in header <memory>
   template< class T, class Alloc, class... Args >

   constexpr T* uninitialized_construct_using_allocator( T* p,
                                                         const Alloc&     \fI(since C++20)\fP
   alloc,

                                                         Args&&... args
   );

   Creates an object of the given type T by means of uses-allocator construction at the
   uninitialized memory location indicated by p.

   Equivalent to

 return std::apply(
     [&]<class... Xs>(Xs&&...xs)
     {
         return std::construct_at(p, std::forward<Xs>(xs)...);
     },
     std::uses_allocator_construction_args<T>(alloc, std::forward<Args>(args)...));

.SH Parameters

   p     - the memory location where the object will be placed
   alloc - the allocator to use
   args  - the arguments to pass to T's constructor

.SH Return value

   Pointer to the newly-created object of type T.

.SH Exceptions

   May throw any exception thrown by the constructor of T, typically including
   std::bad_alloc.

.SH Example

    This section is incomplete
    Reason: no example

.SH See also

   uses_allocator           checks if the specified type supports uses-allocator
   \fI(C++11)\fP                  construction
                            \fI(class template)\fP
   make_obj_using_allocator creates an object of the given type by means of
   (C++20)                  uses-allocator construction
                            \fI(function template)\fP

.SH Category:
     * Todo no example
